Method for generation of training sequence in channel estimation

ABSTRACT

The invention discloses a method for generating training sequences in channel estimation. The method, according to a system real working state at a specific time burst, dynamically determines offsets of training sequences selected from a basic code, and the generated user training sequences are allocated to each subscriber at the specific time burst. The method makes said offset as long as possible when dynamically selecting the training sequences. The said system read working state can be the real subscribers number at a specific time burst and/or the channel estimation states of every subscriber before the specific time burst. The invention can obtain better effect of channel estimation, thereby decreasing code error rate, enhancing quality of receiving signal in the system and improving communication performance.

FIELD OF THE TECHNOLOGY

[0001] The present invention relates generally to a training sequences generating and allocation method in a wireless communication system, and more particularly to a training sequence generating method of TD-CDMA (time division—code division multiple access) or TD-SCDMA (time division—synchronous code division multiple access) system.

BACKGROUND OF THE INVENTION time-slot includes several code channels, which are used to distinguish different subscribers in the same time-slot. Applying hybrid TDMA and CDMA mode has performance advantage than the only TDMA or CDMA mode. In a TD-CDMA system, a receiver not only needs to separate different time-slots in each frame, but also needs to separate different code channels in the same time-slot with correlation methods. With these methods, different channels can be differentiated at the receiving end. After transmission, a signal, sent by the transmitting end of a system, will be put in interference by the space time-variant channel, where the signal passes through. In addition, multipath interference of a mobile channel and the channel itself also causes intersymbol interference (ISI) and multiple access interference (MAI). In order to recover correctly a transmitted signal at the receiving end, it is necessary to obtain the channel impulse response. With the received signal and the channel impulse response, a transmitted signal will be correctly estimated. Therefore, quality of channel estimation occupies a pivotal position for a system performance.

[0002] In a modern wireless communication system, because of multipath fading and time delay spread a received digital signal, which has been passed through a radio channel, has frequency selective fading, time selective fading, wave distortion and lower signal-to-noise ratio. Therefore, it is difficult to recover a transmitted signal at the receiving end. In many systems, training sequence (called preamble code or midamble code, according to their position) is used to estimate the channel. Obviously, generating method of a training sequence is very important.

[0003] Reference [1], Bernd Steiner and Peter Jung: “Uplink Channel Estimation in Synchronous CDMA Mobile Radio Systems with Joint Detection”, PIMRC'93, discloses a maximum likelihood non-deviated channel estimation method and a matching filter deviated channel estimation method. At the same time, reference [1] has provided a training sequence generating method, which considers that training sequences for different subscribers in a same time-slot are based on a same basic code or cycle basic code, with different time shifting each other. In reference [1], it is supposed that channel impulse response of each subscriber should have same length, so relative time shifting of training sequence code of each subscriber is an equal interval.

[0004] For the present technology as shown in reference [1], FIG.1 and FIG.2 show diagrams of different subscribers training sequences which are obtained by shifting the basic code sequentially. Wherein the offset of generated training sequence from the basic code corresponds to the estimated window length. In this case, whether the real subscriber number reaches the maximum subscriber number, estimated window length of each subscriber all selects W, i.e. corresponding to the maximum subscriber number situation.

[0005] In FIG.1, the basic code is non-cyclic. The estimated window length is W=P/K, wherein K is the maximum subscribers number working simultaneously, and P is length of the basic code. In FIG.2, the basic code is cyclic. The estimated window length is W=P/K, wherein K is the maximum subscribers number working simultaneously, and P is period of the basic code. When selecting cyclic basic code, processing complexity of channel estimation at receiving end will be simplified. For method of the invention, two basic code cases are no difference in principle.

[0006] The generating methods of a training sequence from a basic code, mentioned above, are all supposed that channel impulse response of every subscriber has the same length, and relative time shift between training sequences of every subscriber has equal interval. This kind of generating methods cannot fully develop the channel estimation advantage, so it is unavoidable that the communication system performance will be affected.

SUMMARY OF THE INVENTION

[0007] The invention provides a generating method for training sequence in channel estimation. According to a system real working state at a specific time burst, the method dynamically determines offsets of training sequences, which are selected from a basic code or a cyclic basic code, and the generated user training sequences are allocated to each subscriber at the specific time burst.

[0008] Perfectly, making said offset as long as possible when dynamically selecting the training sequences.

[0009] Said system real working state means that the real subscribers number at the specific time burst and/or the channel estimation states of every subscriber before the specific time burst.

[0010] The invention proposes a training sequence generating method, which dynamically selects training sequence according to the system working state. In this method, according to environment where subscribers are located and the channel situation, a base station dynamically selects training sequences and allocates to every subscriber. Purposes of the training sequences selection are to make the channel estimation window length as long as possible, to use resource thoroughly, to estimate channel more accurately and to make the system capacity as large as possible.

[0011] Although the invention mainly points to the CDMA wireless communication system, but it also can be used in the FDMA and TDMA system with similar transmission architecture. According to the invention, any engineer skilled the art of signal processing and communication, etc. can design training sequences for different subscribers.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 shows a diagram that generates training sequences from a non-cyclic basic code of prior art.

[0013]FIG. 2 shows a diagram that generates training sequences from a cyclic basic code of prior art.

[0014]FIG. 3a shows an embodiment of the invention, a time burst structure at the transmitting end.

[0015]FIG. 3b shows an embodiment of the invention, a time burst structure at the receiving end.

[0016]FIG. 4 shows an embodiment of the invention, a method for generating different subscriber training sequences from a same cyclic basic code.

EMBODIMENTS OF THE INVENTION

[0017] The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.

[0018]FIG. 3a shows a transmitted burst structure for TD-CDMA. In general, a link means that a burst signal to be transmitted, after processed by a transmitting filter, is passed through a radio channel to reach a receiver. Taking fixed length of a transmission channel delay spread is W, then each burst structure at least includes a data block and a predefined training sequence block. In general, channel estimation by using training sequence is performed by solving the equations consisted by the known training sequences and the received signal vector. Purpose of the invention is to propose a method for generating and allocating training sequence.

[0019]FIG. 3a shows a transmitted burst structure for TD-CDMA. The burst structure includes two data blocks and one training sequence block, and the two data blocks, data block 1 and data block 2, are separated by the training sequence block located at the middle. Suppose it is selected that fixed delay spread of a channel is W code chips width, then the received burst structure at receiving end is as shown in FIG. 3b. Wherein, part of received signal (W−1 code chips length) of data block 1 is moved to the corresponding part of received training sequence, and part of received training sequence is also moved to the received data block 2.

[0020] In the following, a midamble code is taken as an example to describe a training sequence selection. In real, the invention is not limited to a midamble code selection. The invention is appropriate to training sequence selection for any channel estimation based on training sequence, and is also appropriate for generating training sequence from cyclic basic code or non-cyclic basic code.

[0021] Suppose there are K radio subscribers in a system, then the discussed system model has K radio channels. Suppose the complex number impulse response is:

h ^((k))=(h ₁ ^((k)) ,h ₂ ^((k)) . . . h _(w) ^((k)))^(T) , k=1 . . . K  (1)

[0022] wherein the length is W.

[0023] When the K subscribers channel response is written in a vector form, it is:

h=(h ^((1)T) ,h ^((2)T) . . . h ^((K)T))^(T)  (2)

[0024] The total number of unknown channel coefficients is:

U=KW  (3)

[0025] the training sequence of k^(th) subscriber is:

m ^((k)=() m ₁ ^((k)) ,m ₂ ^((k)) . . . m _(L+W−1) ^((k)))^(T) ,k=1 . . . K  (4)

[0026] Since it is suppose that length of the channel impulse response is W, so the channel ISI is caused by the last W−1 elements of data symbols in the data block. Initial W−1 samples of the received signal is affected by the delay signal of the training sequence, i.e. there is ISI, so they are not taken as part of the channel estimation. Therefore, energy of the initial W−1 elements of each training sequence is not completely used for channel estimation. The receiving signal defined uniquely by the training sequence itself has only L elements.

[0027] Suppose the real receiving signal is:

e=(e ₁ ,e ₂ . . . e _(L))^(T)  (5)

[0028] Accorf the address portion 702 contains a type indicator that is related to the content type of the non-address portion of the packet, such an indicator may be used in support of, but not in place of the analysis of the non-address portion 701 of the pa,m ₂ ^((k)) . . . m _(L+W−1) ^((k)))^(T) ,k=1 . . . K  (4)

[0029] Since it is suppose that length of the channel impulse response is W, so the channel ISI is caused by the last W−1 elements of data symbols in the data block. Initial W−1 samples of the received signal is affected by the delay signal of the training sequence, i.e. there is ISI, so they are not taken as part of the channel estimation. Therefore, energy of the initial W−1 elements of each training sequence is not completely used for channel estimation. The receiving signal defined uniquely by the training sequence itself has only L elements.

[0030] Suppose the real receiving signal is:

e=(e ₁ ,e ₂ . . . e _(L))^(T)  (5)

[0031] According to the training sequence m^((k)) of formula (4), the L×W matrix is:

G ^((k))=(G _(ij) ^((k))), k=1 . . . K  (6a)

G _(ij) ^((k)) +m _(W+i−j) ^((k)) , i=1 . . . L; j=1 . . . W  (6b)

[0032] The L×U matrix G is:

G=(G ⁽¹⁾ ,G ⁽²⁾ . . . G ^((K)))  (7)

[0033] wherein the additive stationary noise with zero average value is

n=(n₁ ,n ₂ . . . n _(L))^(T)  (8)

[0034] Therefore, the received signal is expressed as

e=Gh+n  (9)

[0035] It is seen that in real the channel estimation corresponds to solve h from the formula (9) with the Known G and e. Wherein the G is a matrix consisted of every subscriber training sequence, and vector e is a received signal corresponding to the training sequence part.

[0036] In reference [1], in order to decrease system resource as much as possible, a special generating mode of a training sequence is applied. The generating mode is that: in a same time-slot, midamble codes of different subscribers are generated based on a same basic code or cyclic basic code, and between the midamble codes, there are different time shifting mutually.

[0037] Suppose:

m=(m₁ ,m ₂ , . . . m _(L) _(m) _(+(K−1)W))^(T),

[0038] m_(i)ε{1,−1}; i=1, . . . , (L_(m)+(K−1)W) represents a subscriber basic code, wherein m_(i)=m_(i−P), i=(P+1), . . . , (L_(m)+(K−1)W), L_(m) is the length of midamble code, P=KW is period of the basic code, and W is the channel estimated window size (i.e. length of channel impulse response). Then, K different subscribes midamble is generated by formula:

m _(i) ^((k)) =m _(i+(K−k)W) , i=1, . . . , L _(m) ; k=1, . . . , K.

[0039] Therefore, each column of matrix G in formula (7) is obtained from one training sequence m_(i) with different shifts, i.e. matrix G is a cyclic matrix.

[0040] With this midamble, multi-subscribers' channel estimation can be implemented by one correlation operation. In this case, offset W is an important parameter when selecting subscriber midamble, and at a definite physical layer the offset should be definite. In practice, selection of W needs to consider the following factors: length of midamble code L_(m) in a frame; period P of the selected cyclic basic code; maximum subscriber number K, working simultaneously, in one time-slot; delay spread of a mobile channel W′; before shifting, number of midamble codes, used simultaneously.

[0041] Suppose maximum subscriber number, working simultaneously in one time-slot, is K, then the selecting procedure of the channel impulse response length W should be:

[0042] 1. in order to implement rapidly channel estimation, according to the maximum likelihood channel estimation method (reference [1]) the constructed estimation matrix should be a cyclic matrix. First, there should be W=└P/K┘, wherein “└┘” means a taking lower integer operation.

[0043] 1. in order to implement rapidly channel estimation, according to the maximum information is lost, so the estimated value is not accurate, on the other hand there is interference to channel estimation of the subscriber taking adjacent shifted midamble.

[0044] During selecting offset of subscriber midamble codes, the selected W value should be adaptive. According to different number of subscribers and/or specific channel condition, each subscriber W value and relative position are adjusted accordingly, in order to make length (i.e. offset) of a channel estimation window is longest for as many as possible subscribers.

[0045] In summary, when each subscriber selects midamble, the selecting strategy of W value and midamble code offset sequence number are:

[0046] For existing subscribers with a certain number, the midamble code distance is as far as possible. For a newly added subscriber, according to the selected training sequences of existing subscribers and each channel delay spread of existing subscribers, selects the most suitable midamble code offset sequence number.

[0047] In the following, three embodiments of the training sequence generating method will be describe specifically by taking one time-slot has one basic code as an example. Wherein K represents the maximum number of simultaneously working subscribers, k represents specific offset sequence number, P represents period of the selected cyclic basic code and L_(m) represents length of the midamble code. The three embodiments are:

[0048] (1) When the number of simultaneously working subscribers M is equal or less than K, i.e. M≦K; then at the beginning, length of W takes └P/M┘, k=1, . . . , M; during working according to the different delay spread of each subscriber, the network can re-adjusts offset W(k), k=1, . . . , M, in order to make that a subscriber with smaller channel delay spread occupies a smaller offset, and a subscriber with larger channel delay spread occupies a larger offset. If a subscriber withdraws, then a newly added subscriber will take the position. This is a complete adaptive situation. value and midamble code offset sequence number are: than K, i.e. M <K, and length of W for each subscriber is the same and takes └P/M┘; then along with changing of subscribers number, the length of W is changed. The allocated subscriber number in each time-slot can be informed to every subscriber through the common channel broadcast or other ways.

[0049] (3) Setting several levels for different subscribers numbers, each level is corresponded to one kind of subscribers number and is allocated with a fixed estimated window length. For example, taking K/2 as a limit, then there are two levels. When the subscribers number is greater then K/2, W takes └P/K┘ value; and when the subscribers number is less then K/2, W takes └2P/K┘ value.

[0050]FIG. 4 shows an adaptive generating method of training sequence, whereof the maximum number of subscribers is 16, and the real number of subscribers is 4. The basic code m_(i) represents a definite sequence, which can be a pseudo-random sequence or can be generated by a computer. In this case, 4W are adaptively selected as the length of each channel estimation window, and it is not W as in the 16 subscribers situation. Increasing length of estimation window raises the channel estimation accuracy.

[0051] Based on the above mention, it is definite that when the training sequence length is fixed, the channel impulse response length can be defined by the simultaneously working subscribers in a time-slot, and training sequence of each subscriber can be obtained at the same time. For example, suppose that in each burst the training sequence length is 144 bits or code chips (in spread spectrum system), length of the cyclic basic code is 128 bits or code chips, and the maximum subscribers, working simultaneously, at a time-slot is 16; then according to the formula KW=P, W is 8, i.e. the shift between K^(th) subscriber training sequence and (K−1)^(th) training sequence is 8. Of course, when the maximum subscribers working simultaneously at a time-slot is decreased to half, a shift between different subscribers can be double, and so on. A compromise between performance and complexity can be selected by a subscriber and applied in a real system.

[0052] In a real system, different generating methods can be applied. This means that training sequences generated at a base station satisfy the following two conditions:

[0053] (1) in a definite number of existing subscribers taking midamble code with distance as far as possible;

[0054] (2) for newly added subscriber, according to delay of the existing subscribers, selecting suitable midamble code.

[0055] For example, when the number of subscribers is less than 8, then a newly added subscriber takes, in sequence, midamble code of the sequence number 1, 3, 5, 7, 9, 11, 13, and 15. When a subscriber is withdrawn, then a newly added subscriber will take the midamble code of the withdrawn subscriber. When the number of subscriber is greater than 8, then a newly added subscriber takes midamble code of the sequence number that is sequence number of the existing subscriber with a shortest one of the channel impulse response length W′ plus one. Hereof, it is suppose that increasing direction of the sequence number is consistent with the shift direction. In real, a channel impulse response length W′ can be obtained from the channel estimation value directly. Another method is, at the beginning, an added subscriber takes 1, 9, 5, 13, 3, 7, 11, 15 sequentially. All of these are examples of a training sequence generating method.

[0056] The invention provides a training sequence generating method that is suitable to a wireless communication system, especially to the WCDMA—TDD (wideband CDMA—time division duplex) system, the TD—SCDMA (time division duplex—synchronous CDMA) system and TD—CDMA (time division duplex—CDMA) system. Applying the invention, the available resource of a system is used thoroughly, and a better compromise of performance and complexity is obtained.

[0057] Although the invention mainly points to the CDMA wireless communication system, but it also can be used in a communication system with similar transmission architecture. Any engineer skilled in the art of signal processing, communication etc. can design training sequences for different subscribers according to the invention.

[0058] The invention is suitable for mobile communication systems working at worse environment, such as vehicle mobile station. When it is used in the third generation mobile communication system, code error rate can be decreased, quality of the receiving signal can be raised, so communication performance is improved.

[0059] The invention is not limited to the midamble selection. It can be used for training sequence selection in any channel estimation based on training sequence, including preamble code selection. In addition, the invention is not only suitable to a cyclic basic code, but to a non-cyclic basic code as well. The above mention are only some embodiments of the invention, it is by no means to limit the scope of the invention. 

1. A method for generating training sequence in channel estimation, comprises the steps of: according to a system real working state at a specific time burst, dynamically determining offsets of training sequences selected from a basic code; generating user training sequences by the offsets; and allocating the user training sequences to each subscriber at the specific time burst or directly allocating the offsets to each subscriber at the specific time burst.
 2. The method according to claim 1, further comprises: making the offsets as long as possible when dynamically selecting the training sequences.
 3. The method according to claim 1, wherein the system real working state means that the real subscribers number at the specific time burst and/or the channel estimation states of every subscriber before the specific time burst.
 4. The method according to claim 1, wherein the basic code is non-cyclic basic code or cyclic basic code.
 5. The method according to claim 1, further comprises: if the number of simultaneously working subscribers M is equal or less than the maximum number of simultaneously working subscribers K, i.e. M≦K taking └P/M┘ as the offset of each subscriber; and accordingly changing the offset along with the changing of subscribers number.
 6. The method according to claim 1, further comprises: setting several subscribers number levels, wherein each level corresponds to a kind of subscribers number situation, and accordingly being allocated with a fixed offset, which is longer for level with less subscribers number.
 7. The method according to claims 1, further comprises: during working, according to the different channel delay spread of each subscriber, re-adjusting each subscriber offset by a network, to make a subscriber with smaller channel delay spread occupying a smaller offset and s subscriber with larger channel delay spread occupying a larger offset; and taking the position of withdrawed subscriber by a newly added subscriber if a subscriber withdraws. 